/*
 * @Description: app页面
 * @Author: iamsmiling
 * @Date: 2021-05-23 09:16:56
 * @LastEditTime: 2021-06-16 09:34:34
 */
import 'package:credit_business_circle/pages/community/community_group/community_group_binding.dart';
import 'package:credit_business_circle/pages/community/community_group/community_group_page.dart';
import 'package:credit_business_circle/pages/discoloration/discoloration_binding.dart';
import 'package:credit_business_circle/pages/discoloration/discoloration_page.dart';
import 'package:credit_business_circle/pages/industry/industry_binding.dart';
import 'package:credit_business_circle/pages/industry/industry_page.dart';
import 'package:credit_business_circle/pages/login/find_password/find_password_binding.dart';
import 'package:credit_business_circle/pages/login/find_password/find_password_page.dart';
import 'package:credit_business_circle/pages/login/login_binding.dart';
import 'package:credit_business_circle/pages/login/login_page.dart';
import 'package:credit_business_circle/pages/login/modify_telephone/modify_telephone_binding.dart';
import 'package:credit_business_circle/pages/login/modify_telephone/modify_telephone_page.dart';
import 'package:credit_business_circle/pages/login/register/register_binding.dart';
import 'package:credit_business_circle/pages/login/register/register_page.dart';
import 'package:credit_business_circle/pages/main_binding.dart';
import 'package:credit_business_circle/pages/main_page.dart';
import 'package:credit_business_circle/pages/message/children/chat/chat_binding.dart';
import 'package:credit_business_circle/pages/message/children/chat/chat_page.dart';
import 'package:credit_business_circle/pages/message/children/system_notification/system_notification_binding.dart';
import 'package:credit_business_circle/pages/message/children/system_notification/system_notification_page.dart';
import 'package:credit_business_circle/pages/mine/children/auth/auth_binding.dart';
import 'package:credit_business_circle/pages/mine/children/auth/auth_page.dart';
import 'package:credit_business_circle/pages/mine/children/auth/children/professional_certify/professional_certify_binding.dart';
import 'package:credit_business_circle/pages/mine/children/auth/children/professional_certify/professional_certify_page.dart';
import 'package:credit_business_circle/pages/mine/children/auth/children/professional_certify_status/professional_certify_status_binding.dart';
import 'package:credit_business_circle/pages/mine/children/auth/children/professional_certify_status/professional_certify_status_page.dart';
import 'package:credit_business_circle/pages/mine/children/auth/children/real_name_auth/real_name_auth_binding.dart';
import 'package:credit_business_circle/pages/mine/children/auth/children/real_name_auth/real_name_auth_page.dart';
import 'package:credit_business_circle/pages/mine/children/auth/children/real_name_auth_status/real_name_auth_status_binding.dart';
import 'package:credit_business_circle/pages/mine/children/auth/children/real_name_auth_status/real_name_auth_status_page.dart';
import 'package:credit_business_circle/pages/mine/children/clock/children/clock_rule/clock_rule_page.dart';
import 'package:credit_business_circle/pages/mine/children/clock/children/reward_record/reward_record_binding.dart';
import 'package:credit_business_circle/pages/mine/children/clock/children/reward_record/reward_record_page.dart';
import 'package:credit_business_circle/pages/mine/children/clock/clock_binding.dart';
import 'package:credit_business_circle/pages/mine/children/clock/clock_page.dart';
import 'package:credit_business_circle/pages/mine/children/invitate/children/poster/poster_binding.dart';
import 'package:credit_business_circle/pages/mine/children/invitate/children/poster/poster_page.dart';
import 'package:credit_business_circle/pages/mine/children/invitate/invite_binding.dart';
import 'package:credit_business_circle/pages/mine/children/invitate/invite_page.dart';
import 'package:credit_business_circle/pages/mine/children/my_collection/my_collection_binding.dart';
import 'package:credit_business_circle/pages/mine/children/my_collection/my_collection_page.dart';
import 'package:credit_business_circle/pages/mine/children/my_contatcs/my_contacts_binding.dart';
import 'package:credit_business_circle/pages/mine/children/my_contatcs/my_contacts_page.dart';
import 'package:credit_business_circle/pages/mine/children/my_footprint/my_footprint_binding.dart';
import 'package:credit_business_circle/pages/mine/children/my_footprint/my_footprint_page.dart';
import 'package:credit_business_circle/pages/mine/children/my_publish/my_publish_binding.dart';
import 'package:credit_business_circle/pages/mine/children/my_publish/my_publish_page.dart';
import 'package:credit_business_circle/pages/mine/children/partner/children/kpi/children/kpi_bill/kpi_bill_binding.dart';
import 'package:credit_business_circle/pages/mine/children/partner/children/kpi/children/kpi_bill/kpi_bill_page.dart';
import 'package:credit_business_circle/pages/mine/children/partner/children/kpi/children/withdrawal/widthdrawal_binding.dart';
import 'package:credit_business_circle/pages/mine/children/partner/children/kpi/children/withdrawal/withdrawal_page.dart';
import 'package:credit_business_circle/pages/mine/children/partner/children/kpi/kpi_binding.dart';
import 'package:credit_business_circle/pages/mine/children/partner/children/kpi/kpi_page.dart';
import 'package:credit_business_circle/pages/mine/children/partner/star_partner_binding.dart';
import 'package:credit_business_circle/pages/mine/children/partner/star_partner_page.dart';
import 'package:credit_business_circle/pages/mine/children/profile/company_edit/company_edit_binding.dart';
import 'package:credit_business_circle/pages/mine/children/profile/company_edit/company_edit_page.dart';
import 'package:credit_business_circle/pages/mine/children/profile/profile_binding.dart';
import 'package:credit_business_circle/pages/mine/children/profile/profile_edit/profile_edit_binding.dart';
import 'package:credit_business_circle/pages/mine/children/profile/profile_edit/profile_edit_page.dart';
import 'package:credit_business_circle/pages/mine/children/profile/profile_page.dart';
import 'package:credit_business_circle/pages/mine/children/prop_kit/children/buy_propkit/buy_propkit_binding.dart';
import 'package:credit_business_circle/pages/mine/children/prop_kit/children/buy_propkit/buy_propkit_page.dart';
import 'package:credit_business_circle/pages/mine/children/prop_kit/prop_kit_binding.dart';
import 'package:credit_business_circle/pages/mine/children/prop_kit/prop_kit_page.dart';
import 'package:credit_business_circle/pages/mine/children/setting/children/about_us/about_us_binding.dart';
import 'package:credit_business_circle/pages/mine/children/setting/children/about_us/about_us_page.dart';
import 'package:credit_business_circle/pages/mine/children/setting/children/message_alert/message_alert_binding.dart';
import 'package:credit_business_circle/pages/mine/children/setting/children/message_alert/message_alert_page.dart';
import 'package:credit_business_circle/pages/mine/children/setting/setting_binding.dart';
import 'package:credit_business_circle/pages/mine/children/setting/setting_page.dart';
import 'package:credit_business_circle/pages/mine/children/vip/vip_binding.dart';
import 'package:credit_business_circle/pages/mine/children/vip/vip_page.dart';
import 'package:credit_business_circle/pages/mine/children/wallet/children/recharge/recharge_binding.dart';
import 'package:credit_business_circle/pages/mine/children/wallet/children/recharge/recharge_page.dart';
import 'package:credit_business_circle/pages/mine/children/wallet/wallet_binding.dart';
import 'package:credit_business_circle/pages/mine/children/wallet/wallet_page.dart';
import 'package:credit_business_circle/pages/mine/mine_binding.dart';
import 'package:credit_business_circle/pages/mine/mine_page.dart';
import 'package:credit_business_circle/pages/publish_square/children/publish_center/children/add_tag_binding.dart';
import 'package:credit_business_circle/pages/publish_square/children/publish_center/children/add_tag_page.dart';
import 'package:credit_business_circle/pages/publish_square/children/publish_center/publish_center_binding.dart';
import 'package:credit_business_circle/pages/publish_square/children/publish_center/publish_center_page.dart';
import 'package:credit_business_circle/pages/publish_square/children/publish_detail/publish_detail_binding.dart';
import 'package:credit_business_circle/pages/publish_square/children/publish_detail/publish_detail_page.dart';
import 'package:credit_business_circle/pages/publish_square/children/publish_success/publish_success_page.dart';
import 'package:credit_business_circle/pages/report/report_binding.dart';
import 'package:credit_business_circle/pages/report/report_page.dart';
import 'package:credit_business_circle/pages/search/search_binding.dart';
import 'package:credit_business_circle/pages/search/search_page.dart';
import 'package:credit_business_circle/pages/topic/topic_detail/children/company_profile/company_profile_binding.dart';
import 'package:credit_business_circle/pages/topic/topic_detail/children/company_profile/company_profile_page.dart';
import 'package:credit_business_circle/pages/topic/topic_detail/topic_detail_binding.dart';
import 'package:credit_business_circle/pages/topic/topic_detail/topic_detail_page.dart';
import 'package:credit_business_circle/pages/topic/topic_list/topic_list_binding.dart';
import 'package:credit_business_circle/pages/topic/topic_list/topic_list_page.dart';
import 'package:credit_business_circle/routes/app_routes.dart';
import 'package:credit_business_circle/routes/middleware/auth_middleware.dart';
import 'package:get/get.dart';

class AppPages {
  static final pages = [
    GetPage(
        name: AppRoutes.main,
        page: () => MainPage(),
        binding: MainBinding(),
        middlewares: [AuthMiddleware()]),

    ///登录
    GetPage(
        name: AppRoutes.login,
        page: () => LoginPage(),
        binding: LoginBinding(),
        children: [
          ///注册
          GetPage(
              name: AppRoutes.register,
              page: () => RegisterPage(),
              binding: RegisterBinding())
        ]),

    ///修改手机号
    GetPage(
        name: AppRoutes.modifyTelephone,
        page: () => ModifyTelephonePage(),
        binding: ModifyTelephoneBinding()),

    ///　找回密码
    GetPage(
        name: AppRoutes.findPassword,
        page: () => FindPasswordPage(),
        binding: FindPasswordBinding()),

    ///聊天
    GetPage(
        name: AppRoutes.chat,
        page: () => ChatPage(),
        binding: ChatBinding(),
        children: []),

    ///系统通知
    GetPage(
      name: AppRoutes.systemNotification,
      page: () => SystemNotificationPage(),
      binding: SystemNotificationBinding(),
    ),

    ///个人中心
    GetPage(
        name: AppRoutes.mine,
        page: () => MinePage(),
        binding: MineBinding(),
        children: [
          ///开通会员
          GetPage(
              name: AppRoutes.vip,
              page: () => VipPage(),
              binding: VipBinding()),

          ///发布管理
          GetPage(
              name: AppRoutes.myPublish,
              page: () => MyPublishPage(),
              binding: MyPublishBinding()),

          ///我的收藏
          GetPage(
              name: AppRoutes.myCollection,
              page: () => MyCollectionPage(),
              binding: MyCollectionBinding()),

          ///我的道具
          GetPage(
              name: AppRoutes.propkit,
              page: () => PropKitPage(),
              binding: PropKitBinding(),
              children: [
                GetPage(
                    name: AppRoutes.buyPropkit,
                    page: () => BuyPropkitPage(),
                    binding: BuyProkitBinding())
              ]),

          ///浏览记录
          GetPage(
              name: AppRoutes.myFootprint,
              page: () => MyFootprintPage(),
              binding: MyFootprintBinding()),

          ///联系信息
          GetPage(
              name: AppRoutes.myContacts,
              page: () => MyContactsPage(),
              binding: MyContactsBindings()),

          ///身份认证
          GetPage(
              name: AppRoutes.auth,
              page: () => AuthPage(),
              binding: AuthBinding(),
              children: [
                ///实名认证
                GetPage(
                    name: AppRoutes.realNameAuth,
                    page: () => RealNameAuthPage(),
                    binding: RealNameAuthBinding()),

                ///实名认证状态
                GetPage(
                    name: AppRoutes.realNameAuthStatus,
                    page: () => RealNameAuthStatusPage(),
                    binding: RealNameAuthStatusBinding()),

                ///职业认证
                GetPage(
                    name: AppRoutes.professionalCertify,
                    page: () => ProfessionalCertifyPage(),
                    binding: ProfessionalCertifyBinding()),

                ///职业认证状态
                GetPage(
                    name: AppRoutes.professionalCertifyStatus,
                    page: () => ProdessionalCertifyStatsuPage(),
                    binding: ProfessionalCertifyStatusBinding()),
              ]),

          ///钱包账户
          GetPage(
              name: AppRoutes.wallet,
              page: () => WalletPage(),
              binding: WallerBinding(),
              children: [
                ///充值
                GetPage(
                    name: AppRoutes.recharge,
                    page: () => RechargePage(),
                    binding: RechargeBinding()),
              ]),

          ///星合伙人
          GetPage(
              name: AppRoutes.starPartner,
              page: () => StarPartnerPage(),
              binding: StarPartnerBinding(),
              children: [
                ///业绩纵览
                GetPage(
                    name: AppRoutes.kpi,
                    page: () => KpiPage(),
                    binding: KpiBinding(),
                    children: [
                      ///星币明细
                      GetPage(
                          name: AppRoutes.kpiBill,
                          page: () => KpiBillPage(),
                          binding: KpiBillBinding()),

                      ///提现
                      GetPage(
                          name: AppRoutes.withdrawal,
                          page: () => WithdrawalPage(),
                          binding: WithdrawalBinding())
                    ])
              ]),

          ///签到
          GetPage(
              name: AppRoutes.clock,
              page: () => ClockPage(),
              binding: ClockBinding(),
              children: [
                GetPage(
                    name: AppRoutes.rewardRecord,
                    page: () => RewardRecordPage(),
                    binding: RewardRecordBinding()),
                GetPage(name: AppRoutes.clockRule, page: () => ClockRulePage())
              ]),

          ///邀请好友
          GetPage(
              name: AppRoutes.invite,
              page: () => InvitePage(),
              binding: InviteBinding(),
              children: [
                GetPage(
                    name: AppRoutes.poster,
                    page: () => PosterPage(),
                    binding: PosterBinding())
              ]),

          ///设置变色
          GetPage(
              name: AppRoutes.discoloration,
              page: () => DiscolorationPage(),
              binding: DiscolorationBinding()),

          ///个人资料
          GetPage(
              name: AppRoutes.profile,
              page: () => ProfilePage(),
              binding: ProfileBinding(),
              children: [
                GetPage(
                    name: AppRoutes.profileEdit,
                    page: () => ProfileEditPage(),
                    binding: ProfileEditBinding()),

                ///公司名称
                GetPage(
                    name: AppRoutes.companyEdit,
                    page: () => CompanyEditPage(),
                    binding: CompanyEditBinding()),
              ]),

          ///设置
          GetPage(
              name: AppRoutes.setting,
              page: () => SettingPage(),
              binding: SettingBinding(),
              children: [
                ///关于我们
                GetPage(
                    name: AppRoutes.aboutUs,
                    page: () => AboutUsPage(),
                    binding: AboutUsBinding()),

                ///新消息提醒
                GetPage(
                    name: AppRoutes.messageAlert,
                    page: () => MessageAlertPage(),
                    binding: MessageAlertBinding()),
              ]),
        ]),

    GetPage(
        name: AppRoutes.publishCenter,
        page: () => PublishCenterPage(),
        binding: PublishCenterBinding(),
        children: [
          ///添加标签
          GetPage(
              name: AppRoutes.addTag,
              page: () => AddTagPage(),
              binding: AddTagBinding()),
          GetPage(
              name: AppRoutes.publishDetail,
              page: () => PublishDetailPage(),
              binding: PublishDetailBinding(),
              children: []),
          GetPage(
            name: AppRoutes.publishSuccess,
            page: () => PublishSuccessPage(),
          )
        ]),

    GetPage(
        name: AppRoutes.industry,
        page: () => IndustryPage(),
        binding: IndustryBinding()),

    GetPage(
        name: AppRoutes.communityGroup,
        page: () => CommunityGroupPage(),
        binding: CommunityGroupBinding()),

    ///搜索
    GetPage(
        name: AppRoutes.search,
        page: () => SearchPage(),
        binding: SearchBinding()),

    ///列表也
    GetPage(
        name: AppRoutes.topicList,
        page: () => TopicListPage(),
        binding: TopicListBingding()),

    ///列表也
    GetPage(
        name: AppRoutes.topicDetail,
        page: () => TopicDetailPage(),
        binding: TopicDetailBinding(),
        children: [
          GetPage(
              name: AppRoutes.companyProfile,
              page: () => CompanyProfilePage(),
              binding: CompanyProfileBinding())
        ]),

    ///举报
    GetPage(
        name: AppRoutes.report,
        page: () => ReportPage(),
        binding: ReportBinding())
  ];
}
